{
 "metadata": {
  "name": "",
  "signature": "sha256:62ac02862007a18fee45c7a367b8f4690c8b9fcc0b3ec78f1a88760e38dffb50"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "<h2>Sample-based approximations to expectations</h2>\n",
      "<p>We will try and compute the expected value of $y^2$ where $y\\sim U(0,1)$, i.e.\n",
      "$$ E_{p(y)}(y^2) $$\n",
      "Analytically, we can compute the value as:\n",
      "$$ E_{p(y)}(y^2) = \\int_{0}^1 y^2 p(y) ~dy = \\int_{0}^1 y^2~dy = \\left[\\frac{1}{3}y^3 \\right]_0^1 = \\frac{1}{3} $$\n",
      "To compute a sample based approximation, we will draw samples from $U(0,1)$, square them, and compute the average.\n",
      "</p>"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import numpy as np\n",
      "maxN = 1000;\n",
      "u = np.random.rand(maxN,1)**2\n",
      "expected_val = np.zeros((maxN-1,1))\n",
      "for i in np.arange(maxN-1):\n",
      "    expected_val[i] = u[0:i+1].mean()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 1
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "<p>Plot the evolution of the expectation.</p>"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import pylab as plt\n",
      "%matplotlib inline\n",
      "plt.plot(np.arange(maxN-1),expected_val)\n",
      "plt.plot([0,maxN-1],[1.0/3.0,1.0/3.0],'k--')\n",
      "plt.xlabel('Number of samples')\n",
      "plt.ylabel('Expected value of $y^2$')"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 2,
       "text": [
        "<matplotlib.text.Text at 0x10f576650>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\npf8HiBF7X/JLYQUAAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10f47c390>"
       ]
      }
     ],
     "prompt_number": 2
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 2
    }
   ],
   "metadata": {}
  }
 ]
}